- @no_container = true
- page_title "Branches"
= render "projects/commits/head"

%div{ class: container_class }
  .top-area.adjust
    .nav-text
      Protected branches can be managed in
      = link_to 'project settings', project_protected_branches_path(@project)

    .nav-controls
      = form_tag(filter_branches_path, method: :get) do
        = search_field_tag :search, params[:search], { placeholder: 'Filter by branch name', id: 'branch-search', class: 'form-control search-text-input input-short', spellcheck: false }

      .dropdown.inline>
        %button.dropdown-menu-toggle{ type: 'button', 'data-toggle' => 'dropdown' }
          %span.light
            = branches_sort_options_hash[@sort]
          = icon('chevron-down')
        %ul.dropdown-menu.dropdown-menu-align-right.dropdown-menu-selectable
          %li.dropdown-header
            Sort by
          - branches_sort_options_hash.each do |value, title|
            %li
              = link_to title, filter_branches_path(sort: value), class: ("is-active" if @sort == value)

      - if can? current_user, :push_code, @project
        = link_to project_merged_branches_path(@project), class: 'btn btn-inverted btn-remove has-tooltip', title: "Delete all branches that are merged into '#{@project.repository.root_ref}'", method: :delete, data: { confirm: "Deleting the merged branches cannot be undone. Are you sure?", container: 'body' } do
          Delete merged branches
        = link_to new_project_branch_path(@project), class: 'btn btn-create' do
          New branch

  - if @branches.any?
    %ul.content-list.all-branches
      - @branches.each do |branch|
        = render "projects/branches/branch", branch: branch
    = paginate @branches, theme: 'gitlab'
  - else
    .nothing-here-block No branches to show

= render 'projects/branches/delete_protected_modal'
